<!DOCTYPE html>
<!--[if IE 7]>

<html class="ie ie7" lang="zh-CN">

<![endif]-->
<!--[if IE 8]>

<html class="ie ie8" lang="zh-CN">

<![endif]-->
<!--[if !(IE 7) | !(IE 8)  ]><!-->
<html lang="zh-CN"><!--<![endif]--><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta name="baidu-site-verification" content="ff5a01dbec68cbe04b4739a4e176be51">
<meta charset="utf-8">

<link rel="icon" href="http://www.bysocket.com/favicon.png">
<link rel="shortcut icon" href="http://files.cnblogs.com/Alandre/bysocket.ico">
<!-- 设置标题 -->

<title>带着问题学 Spring MVC 源码： 一、概述 | BYSocket</title> 



<!-- 设置描述性标签和关键词标签 -->




<meta content="摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载，保留摘要，谢谢！" name="description">

<meta content="" name="keywords">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<meta http-equiv="X-UA-Compatible" content="IE=edge">




<!-- All in One SEO Pack 2.3.9.2 by Michael Torbert of Semper Fi Web Design[500,581] -->
<meta name="description" content="摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载，保留摘要，谢谢！ 简单就好，生活可以很德国 Q：什么是 Spring MVC ? ※ Spring MVC 是 Spring Web 的一个重要模块。Spring 支持 Web 应用，Spring MVC 是对">

<link rel="canonical" href="http://www.bysocket.com/?p=1333">
<!-- /all in one seo pack -->
<link rel="dns-prefetch" href="http://s.w.org/">
<link rel="alternate" type="application/rss+xml" title="BYSocket » 带着问题学 Spring MVC 源码： 一、概述评论Feed" href="http://www.bysocket.com/?feed=rss2&amp;p=1333">
		<script type="text/javascript">
			window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/2\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/2\/svg\/","svgExt":".svg","source":{"concatemoji":"http:\/\/www.bysocket.com\/wp-includes\/js\/wp-emoji-release.min.js?ver=4.6.1"}};
			!function(a,b,c){function d(a){var c,d,e,f,g,h=b.createElement("canvas"),i=h.getContext&&h.getContext("2d"),j=String.fromCharCode;if(!i||!i.fillText)return!1;switch(i.textBaseline="top",i.font="600 32px Arial",a){case"flag":return i.fillText(j(55356,56806,55356,56826),0,0),!(h.toDataURL().length<3e3)&&(i.clearRect(0,0,h.width,h.height),i.fillText(j(55356,57331,65039,8205,55356,57096),0,0),c=h.toDataURL(),i.clearRect(0,0,h.width,h.height),i.fillText(j(55356,57331,55356,57096),0,0),d=h.toDataURL(),c!==d);case"diversity":return i.fillText(j(55356,57221),0,0),e=i.getImageData(16,16,1,1).data,f=e[0]+","+e[1]+","+e[2]+","+e[3],i.fillText(j(55356,57221,55356,57343),0,0),e=i.getImageData(16,16,1,1).data,g=e[0]+","+e[1]+","+e[2]+","+e[3],f!==g;case"simple":return i.fillText(j(55357,56835),0,0),0!==i.getImageData(16,16,1,1).data[0];case"unicode8":return i.fillText(j(55356,57135),0,0),0!==i.getImageData(16,16,1,1).data[0];case"unicode9":return i.fillText(j(55358,56631),0,0),0!==i.getImageData(16,16,1,1).data[0]}return!1}function e(a){var c=b.createElement("script");c.src=a,c.type="text/javascript",b.getElementsByTagName("head")[0].appendChild(c)}var f,g,h,i;for(i=Array("simple","flag","unicode8","diversity","unicode9"),c.supports={everything:!0,everythingExceptFlag:!0},h=0;h<i.length;h++)c.supports[i[h]]=d(i[h]),c.supports.everything=c.supports.everything&&c.supports[i[h]],"flag"!==i[h]&&(c.supports.everythingExceptFlag=c.supports.everythingExceptFlag&&c.supports[i[h]]);c.supports.everythingExceptFlag=c.supports.everythingExceptFlag&&!c.supports.flag,c.DOMReady=!1,c.readyCallback=function(){c.DOMReady=!0},c.supports.everything||(g=function(){c.readyCallback()},b.addEventListener?(b.addEventListener("DOMContentLoaded",g,!1),a.addEventListener("load",g,!1)):(a.attachEvent("onload",g),b.attachEvent("onreadystatechange",function(){"complete"===b.readyState&&c.readyCallback()})),f=c.source||{},f.concatemoji?e(f.concatemoji):f.wpemoji&&f.twemoji&&(e(f.twemoji),e(f.wpemoji)))}(window,document,window._wpemojiSettings);
		</script><script src="detail/wp-emoji-release.js" type="text/javascript"></script>
		<style type="text/css">
img.wp-smiley,
img.emoji {
	display: inline !important;
	border: none !important;
	box-shadow: none !important;
	height: 1em !important;
	width: 1em !important;
	margin: 0 .07em !important;
	vertical-align: -0.1em !important;
	background: none !important;
	padding: 0 !important;
}
</style>
<link rel="stylesheet" id="pirate_forms_front_styles-css" href="detail/front.css" type="text/css" media="all">
<link rel="stylesheet" id="zanblog-style-css" href="detail/style.css" type="text/css" media="all">
<link rel="stylesheet" id="bootstrap-style-css" href="detail/bootstrap.css" type="text/css" media="all">
<link rel="stylesheet" id="fontawesome-style-css" href="detail/font-awesome.css" type="text/css" media="all">
<link rel="stylesheet" id="icheck-style-css" href="detail/red.css" type="text/css" media="all">
<link rel="stylesheet" id="custom-style-css" href="detail/custom.css" type="text/css" media="all">
<script type="text/javascript">
var duoshuoQuery = {"short_name":"bysocket","sso":{"login":"http:\/\/www.bysocket.com\/wp-login.php?action=duoshuo_login","logout":"http:\/\/www.bysocket.com\/wp-login.php?action=logout&_wpnonce=8e3563f5ca"},"theme":"default","stylePatch":"wordpress\/FENGLE"};
duoshuoQuery.sso.login += '&redirect_to=' + encodeURIComponent(window.location.href);
duoshuoQuery.sso.logout += '&redirect_to=' + encodeURIComponent(window.location.href);
</script>
    <script type="text/javascript" src="detail/embed.js" charset="UTF-8" async="async"></script>
<script type="text/javascript" src="detail/jquery_002.js"></script>
<script type="text/javascript" src="detail/jquery-migrate.js"></script>
<script type="text/javascript">
/* <![CDATA[ */
var pirateFormsObject = {"errors":""};
/* ]]> */
</script>
<script type="text/javascript" src="detail/scripts-general.js"></script>
<script type="text/javascript" src="detail/bootstrap.js"></script>
<script type="text/javascript" src="detail/jquery.js"></script>
<script type="text/javascript" src="detail/zanblog.js"></script>
<script type="text/javascript" src="detail/custom.js"></script>
<link rel="https://api.w.org/" href="http://www.bysocket.com/?rest_route=/">
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://www.bysocket.com/xmlrpc.php?rsd">
<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://www.bysocket.com/wp-includes/wlwmanifest.xml"> 
<link rel="prev" title="随记 9.26" href="http://www.bysocket.com/?p=1324">
<meta name="generator" content="WordPress 4.6.1">
<link rel="shortlink" href="http://www.bysocket.com/?p=1333">
<link rel="alternate" type="application/json+oembed" href="http://www.bysocket.com/?rest_route=%2Foembed%2F1.0%2Fembed&amp;url=http%3A%2F%2Fwww.bysocket.com%2F%3Fp%3D1333">
<link rel="alternate" type="text/xml+oembed" href="http://www.bysocket.com/?rest_route=%2Foembed%2F1.0%2Fembed&amp;url=http%3A%2F%2Fwww.bysocket.com%2F%3Fp%3D1333&amp;format=xml">
<script type="text/javascript">
                    var cwpCustomBarIcon = '';
                    var isSetToPro = '';
                    var trackcolor = '#ebebeb';
                </script>


<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements Responsive IE8-->

<!--[if lt IE 9]>

  <script src="http://www.bysocket.com/wp-content/themes/FENGLE/ui/js/modernizr.js"></script>

  <script src="http://www.bysocket.com/wp-content/themes/FENGLE/ui/js/respond.min.js"></script>

  <script src="http://www.bysocket.com/wp-content/themes/FENGLE/ui/js/html5shiv.js"></script>

<![endif]-->



<script src="detail/share.js"></script><link type="text/css" rel="stylesheet" href="detail/embed.css"><link rel="stylesheet" href="detail/slide_share.css"><link rel="stylesheet" href="detail/imgshare.css"><link rel="stylesheet" href="detail/share_style0_16.css"></head>

<body class="single single-post postid-1333 single-format-standard">



<header id="zan-header" class="navbar navbar-inverse bs-docs-nav">

  <nav class="container">

    <div>

          <a class="navbar-brand" href="http://www.bysocket.com/">BYSocket</a>

        </div>

    <button class="navbar-toggle" type="button" data-toggle="collapse" data-target=".bs-navbar-collapse">

      <span class="sr-only">Toggle navigation</span>

      <span class="fa fa-reorder fa-lg"></span>

    </button>

    <div class="navbar-collapse bs-navbar-collapse collapse">

      <ul id="menu-%e8%8f%9c%e5%8d%95" class="nav navbar-nav"><li id="menu-item-396" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-home menu-item-396"><a href="http://www.bysocket.com/">文章</a></li>
<li id="menu-item-967" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-967"><a href="http://www.bysocket.com/?page_id=965">项目</a></li>
<li id="menu-item-969" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-969"><a href="http://www.bysocket.com/?page_id=200">小事</a></li>
<li id="menu-item-718" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-718"><a href="http://www.bysocket.com/?page_id=712">彼岸</a></li>
<li id="menu-item-394" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-394"><a href="http://www.bysocket.com/?page_id=205">远方</a></li>
<li id="menu-item-551" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-551"><a href="http://www.bysocket.com/resume/resume.html">自白</a></li>
</ul>
        <div class="search visible-lg">
		
          <form class="navbar-form navbar-right">
<a target="_blank" href="https://github.com/JeffLi1993" title="GitHub"><img class="txxz" src="detail/github1-300x300.png" alt="RSS Feed" title="GitHub" style="width:28px;height:28px" data-bd-imgshare-binded="1"></a> &nbsp;&nbsp;
<a target="_blank" href="http://www.bysocket.com/?feed=rss2" title="RSS订阅本站"><img class="txxz" src="detail/ico_rss.gif" alt="RSS Feed" title="RSS订阅本站" style="width:28px;height:16px" data-bd-imgshare-binded="1"></a> &nbsp;&nbsp;
<a target="_blank" href="http://jq.qq.com/?_wv=1027&amp;k=eeOZtd" title="点击链接加入群【编程之美】"><img class="txxz" src="detail/qqgroup.png" alt="RSS Feed" title="点击链接加入群【编程之美】" style="width:28px;height:28px" data-bd-imgshare-binded="1"></a> &nbsp;&nbsp;           <input name="s" id="s" class="form-control" placeholder="Search this site..." type="text">

          </form>

        </div>

    </div>

  </nav>

  <div id="if-fixed" class="pull-right visible-lg visible-md">

    <i class="fa fa-thumb-tack"></i>

    <div class="icheckbox_flat-red" style="position: relative;"><input style="position: absolute; opacity: 0;" type="checkbox"><ins class="iCheck-helper" style="position: absolute; top: 0%; left: 0%; display: block; width: 100%; height: 100%; margin: 0px; padding: 0px; background: rgb(255, 255, 255) none repeat scroll 0% 0%; border: 0px none; opacity: 0;"></ins></div>

  </div>

</header>

<div style="background-image:url('http://www.bysocket.com/wp-content/themes/FENGLE/ui/images/ddtp.jpg');">

<div style="height:60px;"></div>

<div align="center">

<a href="http://www.bysocket.com/"><img src="detail/6890948.png" class="txxz" data-bd-imgshare-binded="1"></a>

<font color="#FFFFFF"><h4>難得糊塗，吃虧是福。</h4></font>

</div>

<div style="height:60px;"></div>

</div>
<div id="zan-bodyer" style="padding-top: 30px;">

	<div class="container">

		<section class="row">

			<div>	

				
				
				<article class="article container well">

					<!-- 大型设备文章属性 -->

					<div class="hidden-xs">

						<div class="title-article">

							<h1><a href="http://www.bysocket.com/?p=1333">带着问题学 Spring MVC 源码： 一、概述</a></h1>

						</div>

						<div class="tag-article container">

							<span class="label label-zan"><i class="fa fa-tags"></i> 10-14</span>

							<span class="label label-zan"><i class="fa fa-tags"></i> <a href="http://www.bysocket.com/?cat=22" rel="category">﹝JavaEE 中级﹞</a>,<a href="http://www.bysocket.com/?cat=117" rel="category">Spring MVC 源码</a>,<a href="http://www.bysocket.com/?cat=1" rel="category">技术</a></span>

							<span class="label label-zan"><i class="fa fa-user"></i> <a href="http://www.bysocket.com/?author=1" title="由BYSocket发布" rel="author">BYSocket</a></span>

							<span class="label label-zan"><i class="fa fa-eye"></i> 阅读：1,605 次</span>

						</div>

					</div>

					<!-- 大型设备文章属性 -->

					<!-- 小型设备文章属性 -->

					<div class="visible-xs">

						<div class="title-article">

							<h4><a href="http://www.bysocket.com/?p=1333">带着问题学 Spring MVC 源码： 一、概述</a></h4>

						</div>

						<p>

							<i class="fa fa-calendar"></i> 10-14
							<i class="fa fa-eye"></i> 阅读：1,605 次
						</p>

					</div>

					<!-- 小型设备文章属性 -->

					<div class="centent-article">

							
							<figure class="thumbnail hidden-xs"></figure>							                 

						<p>

							</p><p style="text-align: center;"><span style="color: #800080;"><b>摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载，保留摘要，谢谢！</b></span></p>
<blockquote>
<p style="text-align: center;"><b>简单就好，生活可以很德国</b></p>
</blockquote>
<p>Q：什么是 Spring MVC ? ※</p>
<blockquote><p>Spring MVC 是 Spring Web 的一个重要模块。Spring 支持 Web 应用，Spring MVC 是对 MVC 模式的支持。</p></blockquote>
<p>Q：MVC 模式？&nbsp;※</p>
<blockquote><p>MVC 模式是种经典的软件架构，分 Model 模型、View 视图及 Controller 控制器 
三种角色。架构的意图明显区分三种角色的职责，使其不相互依赖。Java 领域最经典的实现 JSP + Servlet + 
JavaBean，后续也陆续出来了众多优秀框架，SSH 中的 Struts ，还有 SSM 中的 Spring MVC 等。<a href="http://www.bysocket.com/wp-content/uploads/2016/10/mvc%E6%A8%A1%E5%BC%8F-2.png"><img class="alignnone size-large wp-image-1358" src="detail/mvc-2-1024x475.png" alt="mvc%e6%a8%a1%e5%bc%8f" srcset="http://www.bysocket.com/wp-content/uploads/2016/10/mvc模式-2-1024x475.png 1024w, http://www.bysocket.com/wp-content/uploads/2016/10/mvc模式-2-300x139.png 300w, http://www.bysocket.com/wp-content/uploads/2016/10/mvc模式-2-768x357.png 768w, http://www.bysocket.com/wp-content/uploads/2016/10/mvc模式-2-50x23.png 50w, http://www.bysocket.com/wp-content/uploads/2016/10/mvc模式-2.png 1512w" sizes="(max-width: 1024px) 100vw, 1024px" data-bd-imgshare-binded="1" width="1024" height="475"></a></p>
<p>&nbsp;</p></blockquote>
<p>Q:&nbsp;Spring 还要什么其他模块？&nbsp;Web？IOC 容器？AOP？※</p>
<blockquote><p>IOC 容器模块、AOP 模块都是。还有数据访问/集成、Web 等模块都是。这里其他不展开讲，其中 Web 模块建立在 IOC 容器之上，要记住。</p>
<p>来自官网的模块图：<a href="http://www.bysocket.com/wp-content/uploads/2016/10/spring-overview.png"><img class="alignnone size-full wp-image-1337" src="detail/spring-overview.png" alt="spring-overview" srcset="http://www.bysocket.com/wp-content/uploads/2016/10/spring-overview.png 720w, http://www.bysocket.com/wp-content/uploads/2016/10/spring-overview-300x225.png 300w, http://www.bysocket.com/wp-content/uploads/2016/10/spring-overview-370x278.png 370w, http://www.bysocket.com/wp-content/uploads/2016/10/spring-overview-50x38.png 50w" sizes="(max-width: 720px) 100vw, 720px" data-bd-imgshare-binded="1" width="720" height="540"></a></p></blockquote>
<p>Q: Web 模块包含 springmvc 吗？&nbsp;※</p>
<blockquote><p>包含。Web 模块包含&nbsp;spring-web、spring-webmvc、spring-websocket和spring-webmvc-portlet。其中 web-mvc 是我们要学习源码包。</p>
<p>1. spring-web 模块提供基本 Web 集成功能，包括初始化 IOC 容器等工作。</p>
<p>2. spring-webmvc 包含 MVC 模式的实现和 REST Web 服务的实现。该模块基于了 spring-web 模块。</p>
<p>资料来源自：官方文档 <a href="http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/#mvc">MVC</a> 章节，其他模块具体参考官网。</p></blockquote>
<p>&nbsp;</p>
<p>Q:&nbsp;spring-webmvc 模块具体包含什么内容？&nbsp;※</p>
<blockquote><p>spring-webmvc 模块里面包：</p>
<ul>
<li>org.springframework.web.servlet<br>
提供与应用程序上下文基础结构集成的 Servlet，以及 Spring web MVC 框架的核心接口和类。</li>
<li>org.springframework.web.servlet.mvc<br>
Spring 附带的 Servlet MVC 框架的标准控制器实现。<p></p>
<ul>
<li>org.springframework.web.servlet.mvc.annotation<br>
用于基于注解的 Servlet MVC 控制器的支持包。</li>
<li>org.springframework.web.servlet.mvc.condition<br>
用于根据条件匹配传入请求的公共 MVC 逻辑。</li>
<li>org.springframework.web.servlet.mvc.method<br>
用于处理程序方法处理的基于 Servlet 的基础结构，基于在 org.springframework.web.method 包上。</li>
</ul>
</li>
<li>org.springframework.web.servlet.view<br>
提供标准的 View 和 ViewResolver 实现，包括自定义实现的抽象基类。<p></p>
<ul>
<li>org.springframework.web.servlet.view.freemarker<br>
支持将 FreeMarker 集成为 Spring Web 视图技术的类。</li>
<li>org.springframework.web.servlet.view.json<br>
支持提供基于 JSON 序列化的 View 实现的类。</li>
</ul>
</li>
</ul>
<p>上面列出来核心的包。org.springframework.web.servlet.view 包中，&nbsp;View 
视图实现有常见的：JSON 、FreeMarker 等。org.springframework.web.servlet.mvc 
包中，Controller 
控制层实现包括了注解、程序方法处理等封装。自然，看源码先从&nbsp;org.springframework.web.servlet 
包看其核心的接口和类。</p></blockquote>
<p>Q: 核心类和接口有哪些？&nbsp;※</p>
<blockquote><p>DispatcherServlet 类：调度HTTP请求控制器（或者处理器Handler）。</p>
<p>&nbsp;</p>
<p><strong>View 视图层</strong></p>
<p>ModelAndView 类：模型和视图的持有者。</p>
<p>View 接口：MVC WEB 交互。该接口的实现负责呈现视图或者暴露模型。</p>
<p>&nbsp;</p>
<p><strong>Controller 控制层</strong></p>
<p>HandlerMapping 接口： 请求从 DispacherServlet 过来，该接口定义请求和处理程序对象之间的映射。</p>
<p>HandlerInterceptor 接口：处理程序的执行链接口。</p></blockquote>
<p>Q: 又是 MVC 的样子，还有吗？&nbsp;※</p>
<blockquote><p>哦。对了还有张图：</p>
<p><a href="http://www.bysocket.com/wp-content/uploads/2016/10/MVC.png"><img class="alignnone size-large wp-image-1340" src="detail/MVC-1024x488.png" alt="mvc" srcset="http://www.bysocket.com/wp-content/uploads/2016/10/MVC-1024x488.png 1024w, http://www.bysocket.com/wp-content/uploads/2016/10/MVC-300x143.png 300w, http://www.bysocket.com/wp-content/uploads/2016/10/MVC-768x366.png 768w, http://www.bysocket.com/wp-content/uploads/2016/10/MVC-370x176.png 370w, http://www.bysocket.com/wp-content/uploads/2016/10/MVC-1040x496.png 1040w, http://www.bysocket.com/wp-content/uploads/2016/10/MVC-50x24.png 50w, http://www.bysocket.com/wp-content/uploads/2016/10/MVC.png 1468w" sizes="(max-width: 1024px) 100vw, 1024px" data-bd-imgshare-binded="1" width="1024" height="488"></a></p>
<p>所以重要的类还有 ViewResolver、HandleAdapter等。</p></blockquote>
<p>Q: 谢谢，下篇聊什么？</p>
<blockquote><p>当然聊重要类的源码实现咯~，下篇见。</p></blockquote>
<div>
<p style="text-align: center;"><strong>如以上文章或链接对你有帮助的话，别忘了在文章结尾处评论哈~ 你也可以点击页面右边“<span style="color: #0000ff;">分享</span>”悬浮按钮哦，让更多的人阅读这篇文章。</strong></p>
</div>
<div style="float:left">
<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"1","bdMiniList":["qzone","tsina","weixin","tqq","douban","youdao","fbook","twi","linkedin","evernotecn"],"bdPic":"","bdStyle":"0","bdSize":"16"},"slide":{"type":"slide","bdImg":"5","bdPos":"right","bdTop":"100"},"image":{"viewList":["qzone","tsina","tqq","renren","weixin"],"viewText":"分享到：","viewSize":"16"}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script></div>

						<p></p>

						<!-- 分页 -->

						<div clas="zan-page bs-example">

					        <ul class="pager">

								<li class="previous"><a href="http://www.bysocket.com/?p=1307" rel="prev">上一篇</a></li>

								<li class="next"></li>

							</ul>

				        </div>

				        <!-- 分页 -->

						

					</div>				

				</article>

				
				<!-- 相关文章 -->

		        <div id="post-related" class="bs-example visible-md visible-lg">

					<div class="row">

						

			            
					</div>

				</div>

<div style="color:#000000;margin-bottom:20px;" class="grid-layout-zen db">
<a href="http://www.bysocket.com/?tag=ab" class="tag-link-92 tag-link-position-1" title="1个话题" style="color:#1ec029;font-size: 8pt;;">AB</a>
<a href="http://www.bysocket.com/?tag=apachebench" class="tag-link-91 tag-link-position-2" title="1个话题" style="color:#50d7ea;font-size: 8pt;;">ApacheBench</a>
<a href="http://www.bysocket.com/?tag=bst" class="tag-link-95 tag-link-position-3" title="1个话题" style="color:#5345fa;font-size: 8pt;;">BST</a>
<a href="http://www.bysocket.com/?tag=c" class="tag-link-65 tag-link-position-4" title="5个话题" style="color:#eacc7a;font-size: 15.905882352941pt;;">C++</a>
<a href="http://www.bysocket.com/?tag=collections" class="tag-link-58 tag-link-position-5" title="4个话题" style="color:#a6c3d9;font-size: 14.588235294118pt;;">Collections</a>
<a href="http://www.bysocket.com/?tag=cookie" class="tag-link-62 tag-link-position-6" title="1个话题" style="color:#2c3ea5;font-size: 8pt;;">Cookie</a>
<a href="http://www.bysocket.com/?tag=date" class="tag-link-110 tag-link-position-7" title="1个话题" style="color:#5b7feb;font-size: 8pt;;">date</a>
<a href="http://www.bysocket.com/?tag=ddl" class="tag-link-86 tag-link-position-8" title="1个话题" style="color:#81a78c;font-size: 8pt;;">DDL</a>
<a href="http://www.bysocket.com/?tag=dml" class="tag-link-87 tag-link-position-9" title="1个话题" style="color:#2b220;font-size: 8pt;;">DML</a>
<a href="http://www.bysocket.com/?tag=ehcache" class="tag-link-76 tag-link-position-10" title="1个话题" style="color:#fae251;font-size: 8pt;;">Ehcache</a>
<a href="http://www.bysocket.com/?tag=fast-framework" class="tag-link-105 tag-link-position-11" title="1个话题" style="color:#9fdddd;font-size: 8pt;;">fast-framework</a>
<a href="http://www.bysocket.com/?tag=git" class="tag-link-53 tag-link-position-12" title="2个话题" style="color:#6c4abc;font-size: 10.964705882353pt;;">Git</a>
<a href="http://www.bysocket.com/?tag=http" class="tag-link-54 tag-link-position-13" title="4个话题" style="color:#2c3de7;font-size: 14.588235294118pt;;">HTTP</a>
<a href="http://www.bysocket.com/?tag=io" class="tag-link-68 tag-link-position-14" title="6个话题" style="color:#9a84d6;font-size: 17.058823529412pt;;">IO</a>
<a href="http://www.bysocket.com/?tag=java" class="tag-link-63 tag-link-position-15" title="13个话题" style="color:#c14335;font-size: 22pt;;">Java</a>
<a href="http://www.bysocket.com/?tag=java8" class="tag-link-108 tag-link-position-16" title="1个话题" style="color:#475c6d;font-size: 8pt;;">java8</a>
<a href="http://www.bysocket.com/?tag=javaee" class="tag-link-78 tag-link-position-17" title="1个话题" style="color:#dc9429;font-size: 8pt;;">JavaEE</a>
<a href="http://www.bysocket.com/?tag=json" class="tag-link-98 tag-link-position-18" title="1个话题" style="color:#d619ac;font-size: 8pt;;">JSON</a>
<a href="http://www.bysocket.com/?tag=jvm" class="tag-link-115 tag-link-position-19" title="1个话题" style="color:#b3a315;font-size: 8pt;;">JVM</a>
<a href="http://www.bysocket.com/?tag=maven" class="tag-link-101 tag-link-position-20" title="1个话题" style="color:#c3ec2c;font-size: 8pt;;">Maven</a>
<a href="http://www.bysocket.com/?tag=mvc" class="tag-link-104 tag-link-position-21" title="1个话题" style="color:#19e7cf;font-size: 8pt;;">mvc</a>
<a href="http://www.bysocket.com/?tag=properties" class="tag-link-99 tag-link-position-22" title="1个话题" style="color:#c30647;font-size: 8pt;;">Properties</a>
<a href="http://www.bysocket.com/?tag=quartz" class="tag-link-89 tag-link-position-23" title="1个话题" style="color:#4f65e4;font-size: 8pt;;">quartz</a>
<a href="http://www.bysocket.com/?tag=redis" class="tag-link-57 tag-link-position-24" title="2个话题" style="color:#6602b2;font-size: 10.964705882353pt;;">Redis</a>
<a href="http://www.bysocket.com/?tag=rest" class="tag-link-73 tag-link-position-25" title="1个话题" style="color:#7151ac;font-size: 8pt;;">REST</a>
<a href="http://www.bysocket.com/?tag=servlet" class="tag-link-60 tag-link-position-26" title="1个话题" style="color:#73492a;font-size: 8pt;;">Servlet</a>
<a href="http://www.bysocket.com/?tag=spring" class="tag-link-74 tag-link-position-27" title="3个话题" style="color:#f727c1;font-size: 12.941176470588pt;;">Spring</a>
<a href="http://www.bysocket.com/?tag=spring-boot" class="tag-link-75 tag-link-position-28" title="2个话题" style="color:#6f35bd;font-size: 10.964705882353pt;;">Spring Boot</a>
<a href="http://www.bysocket.com/?tag=sql" class="tag-link-85 tag-link-position-29" title="1个话题" style="color:#ecd8cb;font-size: 8pt;;">SQL</a>
<a href="http://www.bysocket.com/?tag=time" class="tag-link-109 tag-link-position-30" title="1个话题" style="color:#d1046b;font-size: 8pt;;">time</a>
<a href="http://www.bysocket.com/?tag=token" class="tag-link-77 tag-link-position-31" title="1个话题" style="color:#9331d0;font-size: 8pt;;">Token</a>
<a href="http://www.bysocket.com/?tag=tomcat" class="tag-link-61 tag-link-position-32" title="1个话题" style="color:#b98f4;font-size: 8pt;;">Tomcat</a>
<a href="http://www.bysocket.com/?tag=transaction" class="tag-link-84 tag-link-position-33" title="1个话题" style="color:#21dc56;font-size: 8pt;;">transaction</a>
<a href="http://www.bysocket.com/?tag=web%e5%ae%89%e5%85%a8" class="tag-link-67 tag-link-position-34" title="1个话题" style="color:#e677cb;font-size: 8pt;;">Web安全</a>
<a href="http://www.bysocket.com/?tag=%e4%ba%8b%e5%8a%a1" class="tag-link-82 tag-link-position-35" title="1个话题" style="color:#f6656f;font-size: 8pt;;">事务</a>
<a href="http://www.bysocket.com/?tag=%e4%ba%8c%e5%8f%89%e6%90%9c%e7%b4%a2%e6%a0%91" class="tag-link-97 tag-link-position-36" title="1个话题" style="color:#c8a02f;font-size: 8pt;;">二叉搜索树</a>
<a href="http://www.bysocket.com/?tag=%e4%ba%8c%e5%8f%89%e6%a0%91" class="tag-link-96 tag-link-position-37" title="1个话题" style="color:#12b671;font-size: 8pt;;">二叉树</a>
<a href="http://www.bysocket.com/?tag=%e7%8a%b6%e6%80%81%e7%a0%81" class="tag-link-55 tag-link-position-38" title="1个话题" style="color:#51e55a;font-size: 8pt;;">状态码</a>
<a href="http://www.bysocket.com/?tag=%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f" class="tag-link-66 tag-link-position-39" title="3个话题" style="color:#4a47bc;font-size: 12.941176470588pt;;">设计模式</a>
<a href="http://www.bysocket.com/?tag=%e9%9a%8f%e7%ac%94" class="tag-link-79 tag-link-position-40" title="2个话题" style="color:#156892;font-size: 10.964705882353pt;;">随笔</a>
<a href="http://www.bysocket.com/?tag=%e9%9b%86%e5%90%88" class="tag-link-59 tag-link-position-41" title="2个话题" style="color:#4cc7ac;font-size: 10.964705882353pt;;">集合</a></div>
<div style="color:#000000;" class="grid-layout-zen db">

    <img class="grid-zen" src="detail/qrcode_for_gh_cd421e7eb7d6_430.jpg" data-bd-imgshare-binded="1">
    <p class="grid-zen">
        "万千世界，飘过的我是竹叶般..."<br><br>
博主：<a href="http://weibo.com/p/1005052163271402/home?from=page_100505&amp;mod=TAB&amp;is_all=1#place">BYSocket</a>，博主的\'编程之美\'群（<a href="http://jq.qq.com/?_wv=1027&amp;k=TyPxD8">365234583</a>）<br>
自言自语：<br>
写写博，编编书，听听歌，健健身，练练字，写写文。医科大信息本科生，开源作者，半吊子书法爱好者，半吊子创业爱好者，半吊子...... 我在试错，我不知道以后会干什么，但我享受现在试错给我的惊讶的生活~ <br><br>
如果你喜欢，可以及时得到博客文章的推送或者留言给我，扫下左边我的公众号。<br><br>
这是我喜欢的一些话:<br>
“路漫漫其修远兮，吾将上下而求索” <br>
任何事情，方向对了，千方百计地去做，做任何事情朝这个方向，物理上的正功也有，负功也有，像溪水向下流碰到石头就转弯，肯定会有小成就。还有最主要的开心~
    </p>
</div>
<div class="plk">

<a name="comments"></a>

<div class="ds-thread" data-thread-key="1333" data-author-key="1" data-title="带着问题学 Spring MVC 源码： 一、概述" data-url="http://www.bysocket.com/?p=1333" id="ds-thread"><div id="ds-reset"><div class="ds-comments-info"><div class="ds-sort"><a class="ds-order-desc ds-current">最新</a><a class="ds-order-asc">最早</a><a class="ds-order-hot">最热</a></div><ul class="ds-comments-tabs"><li class="ds-tab"><a class="ds-comments-tab-duoshuo ds-current" href="javascript:void(0);"><span class="ds-highlight">2</span>条评论</a></li>  </ul></div><ul class="ds-comments"><li class="ds-post" data-post-id="6344164215049159425"><div class="ds-post-self" data-post-id="6344164215049159425" data-thread-id="6341253593969984257" data-root-id="6343797800756577026" data-source="duoshuo"><div class="ds-avatar" data-user-id="8171665"><a rel="nofollow author" target="_blank" href="http://weibo.com/bysocket" onclick="this.href='http://bysocket.duoshuo.com/user-url/?user_id=8171665';" title="泥沙砖瓦浆木匠-Jeff_Li"><img src="detail/1.jpg" alt="泥沙砖瓦浆木匠-Jeff_Li"></a></div><div class="ds-comment-body"><div class="ds-comment-header"><a class="ds-user-name ds-highlight" data-qqt-account="" href="http://weibo.com/bysocket" onclick="this.href='http://bysocket.duoshuo.com/user-url/?user_id=8171665';" rel="nofollow" target="_blank" data-user-id="8171665">泥沙砖瓦浆木匠-Jeff_Li</a></div><ol id="ds-ctx"><li class="ds-ctx-entry" data-post-id="6343797800756577026"><div class="ds-avatar"><img src="detail/230811.jpg" alt="大水牛"></div><div class="ds-ctx-body"><div class="ds-ctx-head">大水牛<a href="http://www.bysocket.com/undefined" target="_blank" rel="nofollow" class="ds-time" datetime="2016-10-21T14:15:25+08:00" title="2016年10月21日 下午2:15:25">10月21日</a><div class="ds-ctx-nth" title="2016年10月21日 下午2:15:25">1楼</div></div><div class="ds-ctx-content">楼主，坐等下篇。　　　　　　　<div class="ds-comment-actions"><a class="ds-post-likes" href="javascript:void(0);"><span class="ds-icon ds-icon-like"></span>顶</a><a class="ds-post-repost" href="javascript:void(0);"><span class="ds-icon ds-icon-share"></span>转发</a><a class="ds-post-reply" href="javascript:void(0);"><span class="ds-icon ds-icon-reply"></span>回复</a></div></div></div></li></ol><p>谢谢评论~</p><div class="ds-comment-footer ds-comment-actions"><span class="ds-time" datetime="2016-10-22T13:57:17+08:00" title="2016年10月22日 下午1:57:17">10月22日</span><a class="ds-post-reply" href="javascript:void(0);"><span class="ds-icon ds-icon-reply"></span>回复</a><a class="ds-post-likes" href="javascript:void(0);"><span class="ds-icon ds-icon-like"></span>顶</a><a class="ds-post-repost" href="javascript:void(0);"><span class="ds-icon ds-icon-share"></span>转发</a><a class="ds-post-report" href="javascript:void(0);"><span class="ds-icon ds-icon-report"></span>举报</a></div></div></div></li><li class="ds-post" data-post-id="6343797800756577026"><div class="ds-post-self" data-post-id="6343797800756577026" data-thread-id="6341253593969984257" data-root-id="0" data-source="duoshuo"><div class="ds-avatar"><img src="detail/230811.jpg" alt="大水牛"></div><div class="ds-comment-body"><div class="ds-comment-header"><span class="ds-user-name" data-qqt-account="">大水牛</span></div><p>楼主，坐等下篇。</p><div class="ds-comment-footer ds-comment-actions"><span class="ds-time" datetime="2016-10-21T14:15:25+08:00" title="2016年10月21日 下午2:15:25">10月21日</span><a class="ds-post-reply" href="javascript:void(0);"><span class="ds-icon ds-icon-reply"></span>回复</a><a class="ds-post-likes" href="javascript:void(0);"><span class="ds-icon ds-icon-like"></span>顶</a><a class="ds-post-repost" href="javascript:void(0);"><span class="ds-icon ds-icon-share"></span>转发</a><a class="ds-post-report" href="javascript:void(0);"><span class="ds-icon ds-icon-report"></span>举报</a></div></div></div></li></ul><div class="ds-paginator" style="display: none;"><div class="ds-border"></div><a data-page="1" href="javascript:void(0);" class="ds-current">1</a></div><a name="respond"></a><div class="ds-login-buttons"><p>社交帐号登录:</p><div class="ds-social-links"><ul class="ds-service-list"><li><a href="http://bysocket.duoshuo.com/login/weixin/?sso=1&amp;redirect_uri=http%3A%2F%2Fwww.bysocket.com%2Fwp-login.php%3Faction%3Dduoshuo_login%26redirect_to%3Dhttp%253A%252F%252Fwww.bysocket.com%252F%253Fp%253D1333" rel="nofollow" class="ds-service-link ds-weixin">微信</a></li><li><a href="http://bysocket.duoshuo.com/login/weibo/?sso=1&amp;redirect_uri=http%3A%2F%2Fwww.bysocket.com%2Fwp-login.php%3Faction%3Dduoshuo_login%26redirect_to%3Dhttp%253A%252F%252Fwww.bysocket.com%252F%253Fp%253D1333" rel="nofollow" class="ds-service-link ds-weibo">微博</a></li><li><a href="http://bysocket.duoshuo.com/login/qq/?sso=1&amp;redirect_uri=http%3A%2F%2Fwww.bysocket.com%2Fwp-login.php%3Faction%3Dduoshuo_login%26redirect_to%3Dhttp%253A%252F%252Fwww.bysocket.com%252F%253Fp%253D1333" rel="nofollow" class="ds-service-link ds-qq">QQ</a></li><li><a href="http://bysocket.duoshuo.com/login/renren/?sso=1&amp;redirect_uri=http%3A%2F%2Fwww.bysocket.com%2Fwp-login.php%3Faction%3Dduoshuo_login%26redirect_to%3Dhttp%253A%252F%252Fwww.bysocket.com%252F%253Fp%253D1333" rel="nofollow" class="ds-service-link ds-renren">人人</a></li><li><a class="ds-more-services" href="javascript:void(0)">更多»</a></li></ul><ul class="ds-service-list ds-additional-services"><li><a href="http://bysocket.duoshuo.com/login/douban/?sso=1&amp;redirect_uri=http%3A%2F%2Fwww.bysocket.com%2Fwp-login.php%3Faction%3Dduoshuo_login%26redirect_to%3Dhttp%253A%252F%252Fwww.bysocket.com%252F%253Fp%253D1333" rel="nofollow" class="ds-service-link ds-douban">豆瓣</a></li><li><a href="http://bysocket.duoshuo.com/login/kaixin/?sso=1&amp;redirect_uri=http%3A%2F%2Fwww.bysocket.com%2Fwp-login.php%3Faction%3Dduoshuo_login%26redirect_to%3Dhttp%253A%252F%252Fwww.bysocket.com%252F%253Fp%253D1333" rel="nofollow" class="ds-service-link ds-kaixin">开心</a></li><li><a href="http://bysocket.duoshuo.com/login/baidu/?sso=1&amp;redirect_uri=http%3A%2F%2Fwww.bysocket.com%2Fwp-login.php%3Faction%3Dduoshuo_login%26redirect_to%3Dhttp%253A%252F%252Fwww.bysocket.com%252F%253Fp%253D1333" rel="nofollow" class="ds-service-link ds-baidu">百度</a></li><li><a href="http://bysocket.duoshuo.com/login/google/?sso=1&amp;redirect_uri=http%3A%2F%2Fwww.bysocket.com%2Fwp-login.php%3Faction%3Dduoshuo_login%26redirect_to%3Dhttp%253A%252F%252Fwww.bysocket.com%252F%253Fp%253D1333" rel="nofollow" class="ds-service-link ds-google">谷歌</a></li></ul></div></div><div class="ds-replybox"><a class="ds-avatar" href="javascript:void(0);" onclick="return false"><img src="detail/230811.jpg" alt=""></a><form method="post"><input name="thread_id" value="6341253593969984257" type="hidden">
<input name="parent_id" value="" type="hidden">
<input name="nonce" value="580c9c8d9389e" type="hidden"><div class="ds-textarea-wrapper ds-rounded-top"><textarea name="message" title="Ctrl+Enter快捷提交" placeholder="说点什么吧…"></textarea><pre class="ds-hidden-text"></pre></div><div class="ds-post-toolbar"><div class="ds-post-options ds-gradient-bg"><span class="ds-sync"></span></div><button class="ds-post-button" type="submit">发布</button><div class="ds-toolbar-buttons"><a class="ds-toolbar-button ds-add-emote" title="插入表情"></a><a class="ds-toolbar-button ds-add-image" title="插入图片"></a></div></div></form></div><p class="ds-powered-by"><a href="http://duoshuo.com/" target="_blank" rel="nofollow">BYSocket正在使用多说</a></p></div></div>

<script type="text/javascript">
	if (typeof DUOSHUO !== 'undefined')
		DUOSHUO.EmbedThread('.ds-thread');
</script>
	<div id="ds-ssr">

		
            <ol id="commentlist">
                		<li class="comment even thread-even depth-1" id="li-comment-586">
			<article id="comment-586" class="comment">
				<footer class="comment-meta">
					<cite class="comment-author vcard">
						<span class="fn">大水牛</span> on <a rel="nofollow" href="http://www.bysocket.com/?p=1333#comment-586"><time pubdate="" datetime="2016-10-21T14:15:25+00:00">2016年10月21日 at 14:15</time></a> <span class="says">said:</span>					</cite><!-- .comment-author .vcard -->
				</footer>
	
				<div class="comment-content"><p>楼主，坐等下篇。</p>
</div>
				
			</article><!-- #comment-## -->
		<ul class="children">
		<li class="comment byuser comment-author-admin bypostauthor odd alt depth-2" id="li-comment-587">
			<article id="comment-587" class="comment">
				<footer class="comment-meta">
					<cite class="comment-author vcard">
						<span class="fn"><a href="http://weibo.com/bysocket" rel="external nofollow" class="url">泥沙砖瓦浆木匠-Jeff_Li</a></span> on <a rel="nofollow" href="http://www.bysocket.com/?p=1333#comment-587"><time pubdate="" datetime="2016-10-22T13:57:17+00:00">2016年10月22日 at 13:57</time></a> <span class="says">said:</span>					</cite><!-- .comment-author .vcard -->
				</footer>
	
				<div class="comment-content"><p>谢谢评论~</p>
</div>
				
			</article><!-- #comment-## -->
		</li><!-- #comment-## -->
</ul><!-- .children -->
</li><!-- #comment-## -->
            </ol>

		            
    </div> 	

</div>											

			</div>

		</section>

	</div>

</div>

<div style="height:10px;"></div>

<hr>

<footer id="zan-footer">	      	

	Proudly Made By BYSocket, on Dec 2014 
 
	<!--统计代码开始-->

    
    	
                            
                        
    
    <!--统计代码结束-->

</footer>



<div style="display: none;" class="fa fa-angle-up" id="gotop"></div>

<script type="text/javascript">

	backTop=function (btnId){

		var btn=document.getElementById(btnId);

		var d=document.documentElement;

		var b=document.body;

		window.onscroll=set;

		btn.onclick=function (){

			btn.style.display="none";

			window.onscroll=null;

			this.timer=setInterval(function(){

				d.scrollTop-=Math.ceil((d.scrollTop+b.scrollTop)*0.1);

				b.scrollTop-=Math.ceil((d.scrollTop+b.scrollTop)*0.1);

				if((d.scrollTop+b.scrollTop)==0) clearInterval(btn.timer,window.onscroll=set);

			},10);

		};

		function set(){btn.style.display=(d.scrollTop+b.scrollTop>100)?'block':"none"}

	};

	backTop('gotop');

</script>



	<style type="text/css">

		@media (min-width: 820px) {
			#review-statistics .review-wrap-up .review-wu-left .rev-wu-image, #review-statistics .review-wrap-up .review-wu-left .review-wu-grade {
				height: 132.4px;
			}

			#review-statistics .review-wrap-up .review-wu-left .review-wu-grade .cwp-review-chart .cwp-review-percentage {

				margin-top: 12.24%;
			}

			#review-statistics .review-wrap-up .review-wu-left .review-wu-grade .cwp-review-chart span {
				font-size: 26px;
			}

		
		}

		#review-statistics .review-wrap-up div.cwpr-review-top {
			border-top: 5px solid #3BAEDA;
		}

		.user-comments-grades .comment-meta-grade-bar,
		#review-statistics .review-wu-bars ul li {
			background: #E1E2E0;
		}

		#review-statistics .rev-option.customBarIcon ul li {
			color: #E1E2E0;
		}

		#review-statistics .review-wrap-up .review-wu-right ul li, #review-statistics .review-wu-bars h3, .review-wu-bars span, #review-statistics .review-wrap-up .cwpr-review-top .cwp-item-category a {
			color: #3D3D3D;
		}

		#review-statistics .review-wrap-up .review-wu-right .pros h2 {
			color: #8DC153;
		}

		#review-statistics .review-wrap-up .review-wu-right .cons h2 {
			color: #C15353;
		}

		div.affiliate-button a {
			border: 2px solid #3BAEDA;
		}

		div.affiliate-button a:hover {
			border: 2px solid #3BAEDA;
		}

		div.affiliate-button a {
			background: #ffffff;
		}

		div.affiliate-button a:hover {
			background: #3BAEDA;
		}

		div.affiliate-button a span {
			color: #3BAEDA;
		}

		div.affiliate-button a:hover span {
			color: #FFFFFF;
		}

				div.affiliate-button a span {
			background: url("http://www.bysocket.com/wp-content/plugins/wp-product-review/images/cart-icon.png") no-repeat left center;
		}

		div.affiliate-button a:hover span {
			background: url("http://www.bysocket.com/wp-content/plugins/wp-product-review/images/cart-icon-hover.png") no-repeat left center;
		}

		
			</style>
	<script type="text/javascript">
		var c1 = "#FF7F66";
		var c2 = "#FFCE55";
		var c3 = "#50C1E9";
		var c4 = "#8DC153";
	</script>
	<script type="text/javascript" src="detail/wp-embed.js"></script>



<div class="bdshare-slide-button-box bdshare-slide-style-r5" style="top: 100px; width: 0px; z-index: 99999; right: 0px;" data-bd-bind="1477223238359"><a href="#" onclick="return false;" class="bdshare-slide-button" style="left: -24px;"></a><div class="bdshare-slide-list-box" style="width: 0px; display: none;"><div class="bdshare-slide-top">分享到</div><div class="bdshare-slide-list"><ul class="bdshare-slide-list-ul" style="width: 116px;"><li><a href="#" onclick="return false;" class="slide-qzone" data-cmd="qzone">QQ空间</a></li><li><a href="#" onclick="return false;" class="slide-tsina" data-cmd="tsina">新浪微博</a></li><li><a href="#" onclick="return false;" class="slide-weixin" data-cmd="weixin">微信</a></li><li><a href="#" onclick="return false;" class="slide-tqq" data-cmd="tqq">腾讯微博</a></li><li><a href="#" onclick="return false;" class="slide-douban" data-cmd="douban">豆瓣网</a></li><li><a href="#" onclick="return false;" class="slide-youdao" data-cmd="youdao">有道云笔记</a></li><li><a href="#" onclick="return false;" class="slide-fbook" data-cmd="fbook">Facebook</a></li><li><a href="#" onclick="return false;" class="slide-twi" data-cmd="twi">Twitter</a></li><li><a href="#" onclick="return false;" class="slide-linkedin" data-cmd="linkedin">linkedin</a></li><li><a href="#" onclick="return false;" class="slide-evernotecn" data-cmd="evernotecn">印象笔记</a></li></ul></div><div class="bdshare-slide-bottom" style="width: 116px;"><a href="#" onclick="return false;" class="slide-more" data-cmd="more">更多...</a></div></div></div><div id="bdimgshare_1477223238365" class="sr-bdimgshare sr-bdimgshare-list sr-bdimgshare-16 sr-bdimgshare-black" style="height: 36px; line-height: 26px; font-size: 12px; position: absolute; top: 2915.75px; left: 165px; width: 1024px; display: none;" data-bd-bind="1477223238365"><div class="bdimgshare-bg"></div><div class="bdimgshare-content bdsharebuttonbox bdshare-button-style0-16"><label class="bdimgshare-lbl">分享到：</label><a href="#" onclick="return false;" class="bds_qzone" data-cmd="qzone" hidefocus=""></a><a href="#" onclick="return false;" class="bds_tsina" data-cmd="tsina" hidefocus=""></a><a href="#" onclick="return false;" class="bds_tqq" data-cmd="tqq" hidefocus=""></a><a href="#" onclick="return false;" class="bds_renren" data-cmd="renren" hidefocus=""></a><a href="#" onclick="return false;" class="bds_weixin" data-cmd="weixin" hidefocus=""></a><a href="#" onclick="return false;" class="bds_more" data-cmd="more" hidefocus=""></a></div></div></body></html>